<?php

namespace app\common\model;


use think\Db;
use think\facade\Cache;
use think\facade\Validate;
use app\common\model\BaseModel;

use think\Model;

class OrderModel extends Model
{
    protected $table = 'cat_order';
    CONST STATUS_TYPE_ENABLE = 1;//状态 １未使用  2已使用
    CONST STATUS_TYPE_DISABLE = 2;//状态 １未使用  2已使用


    /**
     * @Notes:
     * @Interface hasSn
     * @param $sn
     * @return array|false|\PDOStatement|string|Model
     * @throws \think\db\exception\DataNotFoundException
     * @throws \think\db\exception\ModelNotFoundException
     * @throws \think\exception\DbException
     * @author: kevin.yong
     * @Time: 2020/4/2 0002 15:07
     */
    public static function hasSn($sn)
    {
        return self::where('sn', $sn)->find();
    }



    /**
     * @Notes:创建序列号
     * @Interface random_str
     * @param $length
     * @return string
     * @author: kevin.yong
     * @Time: 2020/4/2 0002 10:30
     */

    public static function random_str($length)
    {
        // 密码字符集，可任意添加你需要的字符
        $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
        $str = '';
        for ($i = 0; $i < $length; $i++) {
            // 这里提供两种字符获取方式
            // 第一种是使用 substr 截取$chars中的任意一位字符；
            // 第二种是取字符数组 $chars 的任意元素
            $str .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);

        }

        $numchars = '0123456789';
        $str1 = '';
        for ($i = 0; $i < $length; $i++) {
            // 这里提供两种字符获取方式
            // 第一种是使用 substr 截取$chars中的任意一位字符；
            // 第二种是取字符数组 $chars 的任意元素
            $str1 .= substr($numchars, mt_rand(0, strlen($numchars) - 1), 1);

        }

        $str2 = $str . $str1;
        return $str2;
    }


}
